	$(document).ready(function(){
		//查询
		toSearch();
		
		//初始化数据
		initData();
		placeholders("#login_name");
		placeholders("#user_name");
	});

	/**
	 * 车辆管辖区域
	 */
	function initData(){
		$('#area_id').combotree({
			url:appCtx + "/system/common/queryAreaTree.html",
			valueField: 'id',
            textField: 'text',
            method: 'post',
            editable : true,
            collapseAll : true,
            onSuccess : function(data){
            	
            },            
            loadFilter: function(data){
            	 data.unshift({ id: '', text: '请选择所属区域', selected: "selected" });
                 return data;
    		},
    		onLoadSuccess: function (data) {
    			$('#area_id').combotree('tree').tree("collapseAll");
    			$('#area_id').combotree('setValue','')
         	}
		});
	}
		
	//点击新增用户按钮新增用户
	function addUserButton(){
		var url = appCtx + "system/user/initUser.html";
		var funcParam = function(){
			window.parent.init();
		}
		window.parent.doDataDialog("insert","增加用户",this.name,"saveUser()", "toSearch()",url);
	}
	 
	 /**
	  * 修改用户
	  * */
	 function updateUser(){
		var checkedIds = $("#tbUsers").getCheckedRows();
		
		if(checkedIds.length<1){
			window.parent.showVelidateModal('请选择要修改的数据！');
			return;
		}
		if(checkedIds.length>1){
			window.parent.showVelidateModal('只能选择一条数据！');
			return;
		}
		var url = appCtx + "system/user/loadUserById.html?userId="+checkedIds[0].replace(/row/, "");
		var funcParam = function(){
			window.parent.init();
		}
		window.parent.doDataDialog("update","修改用户",this.name,"saveUser()", "toSearch()",url);
	}	 
	 
	function resetPassword(){
		var checkedIds = $("#tbUsers").getCheckedRows();	
		if(checkedIds.length<1){
			window.parent.showVelidateModal('请选择要重置密码的数据！');
			return;
		}
		window.parent.doConfirm("确定要将选中用户密码重置为888888 ？",this.name,"resetUserPassword()");	
	} 
	  
	function resetUserPassword(){
		var checkedIds = $("#tbUsers").getCheckedRows();
		$.ajax({
	        type: 'post',
	        async: false,
	        url: appCtx + "system/user/resetPassword.html",
			data:{userIds:checkedIds.toString().replace(/row/, "")},
	        cache: false,
	        dataType : "JSON",
	        success: function (data) {
				if(data.code == "0"){
					$("#tbUsers").flexReload();
					global.ajaxLoading.pop('操作成功!',false,2000);
				}else{
					showVelidateModal("操作失败!");
				}
	        }
	    });		     
	}
	
	function delUsers(){
		var checkedIds = $("#tbUsers").getCheckedRows();		
		if(checkedIds.length<1){
			window.parent.showVelidateModal('请选择要删除的数据！');
			return;
		}
		
		window.parent.doConfirm("确定要删除吗？删除后将无法恢复！",this.name,"deleteUserConfirm()");
    }
  
    function deleteUserConfirm(){
    	var checkedIds = $("#tbUsers").getCheckedRows();
	    $.ajax({
	        type: 'post',
	        async: false,
	        url: appCtx + "system/user/deleteUser.html",
			data:{userIds:checkedIds.toString().replace(/row/, "")},
	        cache: false,
	        dataType : "JSON",
	        success: function (data) {
				if(data.code == "0"){
					$("#tbUsers").flexReload();
					global.ajaxLoading.pop('操作成功!',false,2000);
				}else{
					showVelidateModal("操作失败!");
				}
	        }
	    });		     
	 }

function loadUsers(params){
	$("#tbUsers").flexigrid( {
		url :  appCtx + "system/user/loadAllUsers.html",
		dataType : 'json',
		colModel : [{
			display : '车辆管辖区域',//表头
			name : 'area_name',//序号列为固定值fid
			width : 120,// 得加上，要不IE报错
			sortable:true,// 序号列不能排序
			align : 'left'//对齐方式
		}, {
			display : '登录名',
			name : 'login_name',
			width : 120,
			sortable : true,
			align : 'left'
		}, {
			display : '用户名',
			name : 'user_name',
			width : 120,
			sortable : true,
			align : 'left'
		}, {
			display : '角色名称',
			name : 'role_name',
			width : 120,
			sortable : true,
			align : 'left'
		}, {
			display : '是否超级管理员',
			name : 'super_admin',
			width : 120,
			sortable : true,
			align : 'left',
			handlefunction : 'getSuper_admin',
			paramcolnames : ['super_admin']
		}, {
			display : '联系人',
			name : 'contacts',
			width : 120,
			sortable : true,
			align : 'left'
		}, {
			display : '联系电话',
			name : 'contacts_number',
			width : 120,
			sortable : true,
			align : 'left'
		}, {
			display : '是否启用',
			name : 'enable',
			width : 120,
			sortable : true,
			align : 'left',
			handlefunction : 'getEnable',
			paramcolnames : ['enable']
		}, {
			display : '用户类型',
			name : 'user_type',
			width : 120,
			sortable : true,
			align : 'left',
			handlefunction : 'getUser_type',
			paramcolnames : ['user_type']
		}, {
			display : '用户类型名称',
			name : 'link_name',
			width : 120,
			sortable : true,
			align : 'left'
		}, {
			display : '备注',
			name : 'memo',
			width : 150,
			sortable : true,
			align : 'left'
		}],
		resizable: false,
		sortname : "ID",//第一次加载数据时排序列
		sortorder : "desc",//第一次加载数据时排序类型
		params : params,
		usepager : true,//是否分页，默认为true。
		showToggleBtn: false, 
		showTableToggleBtn : true,//是否显示收起/打开按钮,默认不显示。
		useRp : true,//是否可以动态设置每页显示的结果数，默认为false。
		rp : 10,//每页记录数，默认为10
		checkbox : true,//是否要多选框,默认为false。
		rowId : 'ID',// 多选框绑定行的id,只有checkbox : true时才有效。
		singleSelect:false,
		width : 'auto',
		height : nav.whiceH[0] - 158//表格高度
	});	 
}

function getSuper_admin(super_admin){
	if(super_admin == "true"){
		return "是";
	}else{
		return "否";
	}
}

function getEnable(enable){
	if(enable == "true"){
		return "是";
	}else{
		return "否";
	}
}

function getUser_type(user_type){
	if(user_type == "1"){
		return "政府";
	}else if(user_type=="2"){
		return "企业";
	}else if(user_type =="3"){
		return "驾驶员";
	}else{
		return "";
	}
}

function reloadUsers(params){
	$("#tbUsers").flexOptions( {
		newp : 1,
		params : params
	}).flexReload();
}

var isInitFlexGrid = false;
function toSearch(){
	if(isInitFlexGrid == true){
		reloadUsers(getParam());
	}else{
		loadUsers();
		isInitFlexGrid = true;
	}
}

function getParam(){
	var param = [];
	var area_id = $("#area_id").combotree("getValue");
	var login_name = $("#login_name").val();
	var user_name = $("#user_name").val();
	
	if(area_id && area_id != ""){
		param.push({name : 'area_id',value : area_id});
	}
	if(login_name && login_name != ""){
		param.push({name : "login_name" ,value : login_name});
	}
	if(user_name && user_name != ""){
		param.push({name : 'user_name',value : user_name});
	}
	return param;
}

